<?php

namespace App\Lib\Util;

/**
 * Class ErrorCode
 *
 * @package App\Library
 */
class ErrorCode
{
    /**
     * 接口错误信息&&错误码
     * 1 为成功，非1为失败
     *
     * 错误码为6位
     * 第一位为version code，默认为1
     * 第2，3位为模块编号，通用的错误码的2，3位为00，其他模块依次递增
     * 第4，5，6位为此模块下的错误码编号，从01开始递增
     *
     * 100xxx: 系统级错误
     * 101xxx: 用户鉴权相关
     **/

    const SUCCESS_CODE = 20000;
    const ERROR_CODE = -1;

    // 1000xx
    //=============================================系统级错误信息===================================================//
    const UNKNOWN                      = 100001;            // 未知错误
    const PARAMS_ERROR                 = 100002;            // 请求参数错误
    const SERVER_ERROR                 = 100003;            // 服务器错误
    const UNAUTHORIZED                 = 100004;            // 用户未认证
    const FORBIDDEN                    = 100005;            // 用户无权限访问该资源
    const NO_DATA                      = 100006;            // 没有数据了
    const DEPRECATED                   = 100007;            // 此接口已废弃，请升级到新版本客户端
    const NOT_READY                    = 100008;            // 正在建设中
    const NOT_FOUND                    = 100009;            // 资源不存在
    const CREATE_FAILED                = 100010;            // 添加失败
    const DELETE_FAILED                = 100011;            // 删除失败
    const UPDATE_FAILED                = 100012;            // 更新失败
    const SELECT_FAILED                = 100013;            // 查找失败
    const INVALID_CONFIG               = 100014;            // 配置错误
    const ACTION_FAILED                = 100015;            // 操作失败
    const SUBMIT_PARAMS_VALIDATE_ERROR = 100016;            // 提交数据验证失败
    const NETWORK_ERROR                = 100017;            // 网络错误
    const DB_ERROR                     = 100018;            // DB错误
    const ROUTER_NOT_FUND              = 100019;            // 路由不存在
    const SYSTEM_CTL_NOT_FOUND         = 100020;            // 控制器未找到
    const SYSTEM_CTL_ACTION_NOT_FOUND  = 100021;            // 方法未找到
    const UNLOGIN                      = 100022;            // 用户未登录


    // 101xxx
    //=============================================企业微信通知相关========================================================//
    const EMPTY_MESSAGE                = 101001;            // 消息为空
    const EMPTY_USER                   = 101002;            // 接受人为空
    const GET_TOKEN_ERROR              = 101003;            // 获取token错误
    const TOKEN_ERROR                  = 101004;            // token失效
    const SEND_ERROR                   = 101005;            // 发送消息失败
    const GET_USER_ERROR               = 101006;            // 获取用户列表错误
    const GET_DEMPARTMENT_ERROR        = 101007;            // 获取组织架构列表错误

    // 102xxx
    //=============================================用户相关========================================================//
    const AGENT_NOT_SIGN               = 102001;            // 代理尚未完成签约
    const INVITE_CODE_FAILED           = 102002;            //生成bd邀请码失败
    const INVALID_INVITE_CODE          = 102003;           //无效的bd邀请码

    // 103xxx
    //=============================================消息相关===========================================================//
    const INVILID_MESSAGE_ACTION       = 103001;            //无效指令


    // 104xxx
    //=============================================维护者相关===============================//

    const MAINTAINER_NO_RULE          = 104001;            //获取配置的规则信息失败
    const MAINTAINER_NO_GOODS_NO      = 104002;            //获取商户的行为信息失败
    const MAINTAINER_EVENT_TYPE_ERROR = 104003;            //获取商户行为的事件类型错误，未定义的枚举值

    // 105xxx
    //=============================================推送信息===============================//
    const MESSAGE_REQUEST_UNAUTHORIZED = 105000; //无请求权限
    const MESSAGE_MERCHANT_NOTEXISTS = 105001; //商户不存在
    const MESSAGE_GOODS_NOTEXISTS = 105002; //商品/行为不存在
    const MESSAGE_TRADE_DEALED = 105003; //该订单已处理
    const MESSAGE_RELATED_FAILED = 105004; //关联的订单未完成
    const MESSAGE_UNSUPPORTED_METHOD = 105005; //方法不支持
    const MESSAGE_NONTARGET_CONSUMER = 105006; //无代理普通用户

}
